package com.ruoyi.web.domain;

import java.math.BigDecimal;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.core.annotation.Excel;
import com.ruoyi.common.core.web.domain.BaseEntity;

/**
 * 公司基本信息对象 gu_mr_company_info
 * 
 * @author ruoyi
 * @date 2025-10-24
 */
public class GuMrCompanyInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 自增主键 */
    private String id;

    /** 公司名称 */
    @Excel(name = "公司名称")
    private String name;

    /** 公司英文名称 */
    @Excel(name = "公司英文名称")
    private String ename;

    /** 上市市场 */
    @Excel(name = "上市市场")
    private String market;

    /** 概念及板块，多个概念由英文逗号分隔 */
    @Excel(name = "概念及板块，多个概念由英文逗号分隔")
    private String idea;

    /** 上市日期，格式yyyy-MM-dd */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "上市日期，格式yyyy-MM-dd", width = 30, dateFormat = "yyyy-MM-dd")
    private Date ldate;

    /** 发行价格（元） */
    @Excel(name = "发行价格", readConverterExp = "元=")
    private BigDecimal sprice;

    /** 主承销商 */
    @Excel(name = "主承销商")
    private String principal;

    /** 成立日期 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "成立日期", width = 30, dateFormat = "yyyy-MM-dd")
    private Date rdate;

    /** 注册资本 */
    @Excel(name = "注册资本")
    private String rprice;

    /** 机构类型 */
    @Excel(name = "机构类型")
    private String instype;

    /** 组织形式 */
    @Excel(name = "组织形式")
    private String organ;

    /** 董事会秘书 */
    @Excel(name = "董事会秘书")
    private String secre;

    /** 公司电话 */
    @Excel(name = "公司电话")
    private String phone;

    /** 董秘电话 */
    @Excel(name = "董秘电话")
    private String sphone;

    /** 公司传真 */
    @Excel(name = "公司传真")
    private String fax;

    /** 董秘传真 */
    @Excel(name = "董秘传真")
    private String sfax;

    /** 公司电子邮箱 */
    @Excel(name = "公司电子邮箱")
    private String email;

    /** 董秘电子邮箱 */
    @Excel(name = "董秘电子邮箱")
    private String semail;

    /** 公司网站 */
    @Excel(name = "公司网站")
    private String site;

    /** 邮政编码 */
    @Excel(name = "邮政编码")
    private String post;

    /** 信息披露网址 */
    @Excel(name = "信息披露网址")
    private String infosite;

    /** 证券简称更名历史 */
    @Excel(name = "证券简称更名历史")
    private String oname;

    /** 注册地址 */
    @Excel(name = "注册地址")
    private String addr;

    /** 办公地址 */
    @Excel(name = "办公地址")
    private String oaddr;

    /** 公司简介 */
    @Excel(name = "公司简介")
    private String desc;

    /** 经营范围 */
    @Excel(name = "经营范围")
    private String bscope;

    /** 承销方式 */
    @Excel(name = "承销方式")
    private String printype;

    /** 上市推荐人 */
    @Excel(name = "上市推荐人")
    private String referrer;

    /** 发行方式 */
    @Excel(name = "发行方式")
    private String putype;

    /** 发行市盈率（按发行后总股本） */
    @Excel(name = "发行市盈率", readConverterExp = "按=发行后总股本")
    private BigDecimal pe;

    /** 首发前总股本（万股） */
    @Excel(name = "首发前总股本", readConverterExp = "万=股")
    private BigDecimal firgu;

    /** 首发后总股本（万股） */
    @Excel(name = "首发后总股本", readConverterExp = "万=股")
    private BigDecimal lastgu;

    /** 实际发行量（万股） */
    @Excel(name = "实际发行量", readConverterExp = "万=股")
    private BigDecimal realgu;

    /** 预计募集资金（万元） */
    @Excel(name = "预计募集资金", readConverterExp = "万=元")
    private BigDecimal planm;

    /** 实际募集资金合计（万元） */
    @Excel(name = "实际募集资金合计", readConverterExp = "万=元")
    private BigDecimal realm;

    /** 发行费用总额（万元） */
    @Excel(name = "发行费用总额", readConverterExp = "万=元")
    private BigDecimal pubfee;

    /** 募集资金净额（万元） */
    @Excel(name = "募集资金净额", readConverterExp = "万=元")
    private BigDecimal collect;

    /** 承销费用（万元） */
    @Excel(name = "承销费用", readConverterExp = "万=元")
    private BigDecimal signfee;

    /** 招股公告日 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "招股公告日", width = 30, dateFormat = "yyyy-MM-dd")
    private Date pdate;

    /** 记录创建时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "记录创建时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date createdAt;

    /** 记录更新时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "记录更新时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date updatedAt;

    public void setId(String id) 
    {
        this.id = id;
    }

    public String getId() 
    {
        return id;
    }

    public void setName(String name) 
    {
        this.name = name;
    }

    public String getName() 
    {
        return name;
    }

    public void setEname(String ename) 
    {
        this.ename = ename;
    }

    public String getEname() 
    {
        return ename;
    }

    public void setMarket(String market) 
    {
        this.market = market;
    }

    public String getMarket() 
    {
        return market;
    }

    public void setIdea(String idea) 
    {
        this.idea = idea;
    }

    public String getIdea() 
    {
        return idea;
    }

    public void setLdate(Date ldate) 
    {
        this.ldate = ldate;
    }

    public Date getLdate() 
    {
        return ldate;
    }

    public void setSprice(BigDecimal sprice) 
    {
        this.sprice = sprice;
    }

    public BigDecimal getSprice() 
    {
        return sprice;
    }

    public void setPrincipal(String principal) 
    {
        this.principal = principal;
    }

    public String getPrincipal() 
    {
        return principal;
    }

    public void setRdate(Date rdate) 
    {
        this.rdate = rdate;
    }

    public Date getRdate() 
    {
        return rdate;
    }

    public void setRprice(String rprice) 
    {
        this.rprice = rprice;
    }

    public String getRprice() 
    {
        return rprice;
    }

    public void setInstype(String instype) 
    {
        this.instype = instype;
    }

    public String getInstype() 
    {
        return instype;
    }

    public void setOrgan(String organ) 
    {
        this.organ = organ;
    }

    public String getOrgan() 
    {
        return organ;
    }

    public void setSecre(String secre) 
    {
        this.secre = secre;
    }

    public String getSecre() 
    {
        return secre;
    }

    public void setPhone(String phone) 
    {
        this.phone = phone;
    }

    public String getPhone() 
    {
        return phone;
    }

    public void setSphone(String sphone) 
    {
        this.sphone = sphone;
    }

    public String getSphone() 
    {
        return sphone;
    }

    public void setFax(String fax) 
    {
        this.fax = fax;
    }

    public String getFax() 
    {
        return fax;
    }

    public void setSfax(String sfax) 
    {
        this.sfax = sfax;
    }

    public String getSfax() 
    {
        return sfax;
    }

    public void setEmail(String email) 
    {
        this.email = email;
    }

    public String getEmail() 
    {
        return email;
    }

    public void setSemail(String semail) 
    {
        this.semail = semail;
    }

    public String getSemail() 
    {
        return semail;
    }

    public void setSite(String site) 
    {
        this.site = site;
    }

    public String getSite() 
    {
        return site;
    }

    public void setPost(String post) 
    {
        this.post = post;
    }

    public String getPost() 
    {
        return post;
    }

    public void setInfosite(String infosite) 
    {
        this.infosite = infosite;
    }

    public String getInfosite() 
    {
        return infosite;
    }

    public void setOname(String oname) 
    {
        this.oname = oname;
    }

    public String getOname() 
    {
        return oname;
    }

    public void setAddr(String addr) 
    {
        this.addr = addr;
    }

    public String getAddr() 
    {
        return addr;
    }

    public void setOaddr(String oaddr) 
    {
        this.oaddr = oaddr;
    }

    public String getOaddr() 
    {
        return oaddr;
    }

    public void setDesc(String desc) 
    {
        this.desc = desc;
    }

    public String getDesc() 
    {
        return desc;
    }

    public void setBscope(String bscope) 
    {
        this.bscope = bscope;
    }

    public String getBscope() 
    {
        return bscope;
    }

    public void setPrintype(String printype) 
    {
        this.printype = printype;
    }

    public String getPrintype() 
    {
        return printype;
    }

    public void setReferrer(String referrer) 
    {
        this.referrer = referrer;
    }

    public String getReferrer() 
    {
        return referrer;
    }

    public void setPutype(String putype) 
    {
        this.putype = putype;
    }

    public String getPutype() 
    {
        return putype;
    }

    public void setPe(BigDecimal pe) 
    {
        this.pe = pe;
    }

    public BigDecimal getPe() 
    {
        return pe;
    }

    public void setFirgu(BigDecimal firgu) 
    {
        this.firgu = firgu;
    }

    public BigDecimal getFirgu() 
    {
        return firgu;
    }

    public void setLastgu(BigDecimal lastgu) 
    {
        this.lastgu = lastgu;
    }

    public BigDecimal getLastgu() 
    {
        return lastgu;
    }

    public void setRealgu(BigDecimal realgu) 
    {
        this.realgu = realgu;
    }

    public BigDecimal getRealgu() 
    {
        return realgu;
    }

    public void setPlanm(BigDecimal planm) 
    {
        this.planm = planm;
    }

    public BigDecimal getPlanm() 
    {
        return planm;
    }

    public void setRealm(BigDecimal realm) 
    {
        this.realm = realm;
    }

    public BigDecimal getRealm() 
    {
        return realm;
    }

    public void setPubfee(BigDecimal pubfee) 
    {
        this.pubfee = pubfee;
    }

    public BigDecimal getPubfee() 
    {
        return pubfee;
    }

    public void setCollect(BigDecimal collect) 
    {
        this.collect = collect;
    }

    public BigDecimal getCollect() 
    {
        return collect;
    }

    public void setSignfee(BigDecimal signfee) 
    {
        this.signfee = signfee;
    }

    public BigDecimal getSignfee() 
    {
        return signfee;
    }

    public void setPdate(Date pdate) 
    {
        this.pdate = pdate;
    }

    public Date getPdate() 
    {
        return pdate;
    }

    public void setCreatedAt(Date createdAt) 
    {
        this.createdAt = createdAt;
    }

    public Date getCreatedAt() 
    {
        return createdAt;
    }

    public void setUpdatedAt(Date updatedAt) 
    {
        this.updatedAt = updatedAt;
    }

    public Date getUpdatedAt() 
    {
        return updatedAt;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("id", getId())
            .append("name", getName())
            .append("ename", getEname())
            .append("market", getMarket())
            .append("idea", getIdea())
            .append("ldate", getLdate())
            .append("sprice", getSprice())
            .append("principal", getPrincipal())
            .append("rdate", getRdate())
            .append("rprice", getRprice())
            .append("instype", getInstype())
            .append("organ", getOrgan())
            .append("secre", getSecre())
            .append("phone", getPhone())
            .append("sphone", getSphone())
            .append("fax", getFax())
            .append("sfax", getSfax())
            .append("email", getEmail())
            .append("semail", getSemail())
            .append("site", getSite())
            .append("post", getPost())
            .append("infosite", getInfosite())
            .append("oname", getOname())
            .append("addr", getAddr())
            .append("oaddr", getOaddr())
            .append("desc", getDesc())
            .append("bscope", getBscope())
            .append("printype", getPrintype())
            .append("referrer", getReferrer())
            .append("putype", getPutype())
            .append("pe", getPe())
            .append("firgu", getFirgu())
            .append("lastgu", getLastgu())
            .append("realgu", getRealgu())
            .append("planm", getPlanm())
            .append("realm", getRealm())
            .append("pubfee", getPubfee())
            .append("collect", getCollect())
            .append("signfee", getSignfee())
            .append("pdate", getPdate())
            .append("createdAt", getCreatedAt())
            .append("updatedAt", getUpdatedAt())
            .append("createTime", getCreateTime())
            .append("updateBy", getUpdateBy())
            .append("updateTime", getUpdateTime())
            .append("remark", getRemark())
            .append("createBy", getCreateBy())
            .toString();
    }
}
